package com.lanxiao.cloud.modules.oauth.application.dto;

import com.lanxiao.cloud.common.core.enums.MethodEnum;
import com.lanxiao.cloud.common.core.enums.StateEnum;
import com.lanxiao.cloud.modules.oauth.infrastructure.enums.TypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * @author ：qiaoliang
 * @date ：2021-09-15
 */
@ApiModel("权限查询模型")
public class PermissionQuery {
  @ApiModelProperty(value = "名称")
  private String title;
  @ApiModelProperty(value = "标识")
  private String mark;
  @ApiModelProperty(value = "类型")
  private TypeEnum type;
  @ApiModelProperty(value = "请求url")
  private String url;
  @ApiModelProperty(value = "请求类型")
  private MethodEnum method;
  @ApiModelProperty(value = "状态")
  private StateEnum state;
  @ApiModelProperty(value = "路由地址")
  private String path;
  @ApiModelProperty(value = "路由路径")
  private String component;
  @ApiModelProperty(value = "路由名称")
  private String name;

  private PermissionQuery() {
  }

  public PermissionQuery(String title, String mark,
      TypeEnum type, String url, MethodEnum method,
      StateEnum state, String path, String component, String name) {
    this.title = title;
    this.mark = mark;
    this.type = type;
    this.url = url;
    this.method = method;
    this.state = state;
    this.path = path;
    this.component = component;
    this.name = name;
  }

  public String getTitle() {
    return title;
  }

  public String getMark() {
    return mark;
  }

  public TypeEnum getType() {
    return type;
  }

  public String getUrl() {
    return url;
  }

  public MethodEnum getMethod() {
    return method;
  }

  public StateEnum getState() {
    return state;
  }

  public String getPath() {
    return path;
  }

  public String getComponent() {
    return component;
  }

  public String getName() {
    return name;
  }
}
